package com.THHSEI.common.utils;

import java.security.MessageDigest;

/**
 * 
 * @ClassName: Md5Util
 * @Description: MD5加密
 * @author xuyf
 * @date 2018年9月14日
 */
public class Md5Util {

	/**  
	 * 测试  
	 * @param args  
	 */
	public static void main(String[] args) {
		Md5Util md5 = new Md5Util();
		String md5Str = md5.MD5("123");
		System.out.println(md5Str);
	}

	/**
	 * MD5加密
	 * @author xuyf
	 * @date 2018年9月14日
	 */
	public String MD5(String str) {
		try {
			MessageDigest md5 = MessageDigest.getInstance("MD5"); 
			byte[] bytes = md5.digest(str.getBytes("utf-8"));
			//加密后的字符串
			String newstr=toHex(bytes);
			return newstr;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}
	private String toHex(byte[] bytes) {

	    final char[] HEX_DIGITS = "0123456789ABCDEF".toCharArray();
	    StringBuilder ret = new StringBuilder(bytes.length * 2);
	    for (int i=0; i<bytes.length; i++) {
	        ret.append(HEX_DIGITS[(bytes[i] >> 4) & 0x0f]);
	        ret.append(HEX_DIGITS[bytes[i] & 0x0f]);
	    }
	    return ret.toString();
	}
	
}